The following paragraphs give definitions of terms relevant to this document:
Physical Link: A single point-to-point serial transmission link between two nodes in a network (such as between two routers or between a router and a host machine).
Physical Output Port: The output port of the router that supports one physical link.
Logical Link: A point-to-point traffic path between two routers that is composed of multiple parallel physical links and appears from a routing point of view to be one link.
Logical Output Port: The collection of physical output ports that support the physical links of a logical link.
Internet Protocol (IP): A library of routines called on by various network communications applications. IP is responsible for transporting packets of data from node to node. It forwards each packet based on a four-byte destination address (IP number).
Switch: The term switch refers to a single router or packet switch within a communications network. Alternatively, it can refer to a contained network with a fixed population of inputs and outputs.
A typical data communication network operates in a connectionless mode whereby there is no negotiation between the transmitter, receiver and the network with regard to the type or quantity of traffic that is to be sent. The transmitter simply sends the traffic on the network, and relies on the network components to deliver that traffic to the receiver accurately. These network components consist typically of routing nodes (also known as routers or switches) joined by physical links. The main function of the routing nodes is to direct incoming packets to the appropriate outgoing links. In the event of too much traffic arriving for an outgoing link, the router applies specific policies to decide which traffic is forwarded and which is discarded. It is important that these policies are not subverted by having arbitrary loss of the forwarded traffic as it moves to the next point that implements the management policies. The term lossy, as applied to a router or a switch, implies that there may be loss of traffic between an input port and an output port. As applied to a network, the term lossy implies that traffic may be lost between one routing node and the next routing node on the particular traffic path. Consequently, in order to achieve good performance and resource sharing within a lossy network arrangement, there must be efficient implementation of packet loss and bandwidth allocation policies at all transport nodes which are remote from an input port.
Narrowing the focus to communication network applications that have adopted the Internet Protocol, it is important to note that traffic on the Internet is growing very fast. Not only is it expected that within a short time routes within the network will need multiple physical links to support higher transmission rates, but also that there will exist the necessity for bandwidth allocation to different classes of traffic, perhaps for a particular customer or a class of customer. Therefore, the general architecture for future IP-layer large switches will have the traffic buffered at many inputs while waiting for transfer to an output, where the outgoing link will most likely be a logical link consisting of multiple physical links. Indeed, future implementations of routing networks will have input ports connected to output ports that are geographically remote, and where those ports are potentially connected by wide area lossy fabrics.
A particularly important objective to achieve within these future IP-layer networks will be the efficient management of bandwidth allocation and packet discard policies. In other words, the network must ensure that the bandwidth available on an outgoing link be efficiently distributed between all traffic being routed through the switch fabric.
One solution to this problem is the protocol currently used to enforce a given bandwidth allocation for a traffic class, consisting of rate control exerted at the egress ports of the network. Output buffering is provided to allow for the mismatch between aggregate input rates and the assigned output rate. The output buffers take traffic from every input port and schedule the output of the various classes based on their allocation.
The problem with Egress based control of bandwidth is that ideally the output would like to take traffic from all ports as soon as it arrives. This requires that the output port receive traffic at a rate equal to the maximum sum of all the input rates. For large values of N (number of input ports) and input bandwidth rates, this is not economically sound and lower transfer rates are used. This in turn requires that the output port be selective in what traffic it transfers. In particular, the output port will give preference to traffic whose bandwidth allocation has not been satisfied and delay transferring traffic that can not currently be sent. This normally requires that some bandwidth be consumed in allowing output ports to discover the traffic status of input ports. The output buffered model is further complicated when multi-link trunks (logical links) are employed and the bandwidth allocation must be satisfied over the total bandwidth of the logical output port.
Current router designs are also starting to implement more intelligent traffic management policies for bandwidth allocation and packet discard under congestion conditions, for instance the implementation of flow aware discard policies. Unfortunately, the implementation of such policies in the core of a network may prove to be not only expensive but also very difficult. The addition of transport speed management of bandwidth at every node would be prohibitive, requiring that the bandwidth allocation configuration information be repeated at every node, thus complicating queuing structures and scheduling.
The background information herein clearly shows that there exists a need in the industry to provide a method for improving the management of IP-layer bandwidth allocation and packet discard within a lossy data communication network arrangement.